package com.qymerge.manage.core.utils.db;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * Desc
 * User cong.li
 * Date 2017/4/5
 * Time 10:34
 */
public class QueryUtil {

    /**
     * 查询，模糊查询
     *
     * @param value
     * @return
     */
    public static Pattern QUERY_REGEX(String value) {
        return Pattern.compile(filtration(value), Pattern.CASE_INSENSITIVE);
    }

    /**
     * 查询， 大于
     *
     * @param value
     * @return
     */
    public static String QUERY_GT(Long value) {
        return "{$gt:" + value + "}";
    }

    /**
     * 查询， 不等于
     *
     * @param object
     * @return
     */
    public static String QUERY_NE(Object object) {
        return "{$ne:" + object + "}";
    }

    /**
     * 过滤特殊字符
     *
     * @param value
     * @return
     */
    private static String filtration(String value) {
        String regEx = "[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~！@#￥%……&*（）——+|{}【】‘；：”“’。，、？]";
        Pattern p = Pattern.compile(regEx);
        Matcher m = p.matcher(value);
        return m.replaceAll("").trim();
    }
}
